[INFO] cloning repository https://github.com/nathannewyen/chat
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nathannewyen/chat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d901e8dbbd74fbaed067a1199fe67c7af1ae696d
[INFO] checking nathannewyen/chat against try#a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399 for pr-145770
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnathannewyen%2Fchat" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nathannewyen/chat
[INFO] finished tweaking git repo https://github.com/nathannewyen/chat
[INFO] tweaked toml for git repo https://github.com/nathannewyen/chat written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nathannewyen/chat on toolchain a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nathannewyen/chat already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bb162116499b32e731a47e19f0d188b2c77855a4ad1c04e6dd3d855f9d9c5a53
[INFO] running `Command { std: "docker" "start" "-a" "bb162116499b32e731a47e19f0d188b2c77855a4ad1c04e6dd3d855f9d9c5a53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bb162116499b32e731a47e19f0d188b2c77855a4ad1c04e6dd3d855f9d9c5a53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb162116499b32e731a47e19f0d188b2c77855a4ad1c04e6dd3d855f9d9c5a53", kill_on_drop: false }`
[INFO] [stdout] bb162116499b32e731a47e19f0d188b2c77855a4ad1c04e6dd3d855f9d9c5a53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4f63a8a4c653538b0722918d7d9c9360eead98e2ad9899f4f73bdb1955daa022
[INFO] running `Command { std: "docker" "start" "-a" "4f63a8a4c653538b0722918d7d9c9360eead98e2ad9899f4f73bdb1955daa022", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking bytes v1.6.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling serde v1.0.198
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling jobserver v0.1.31
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]    Compiling cc v1.0.95
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.4
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling regex-syntax v0.8.3
[INFO] [stderr]    Compiling zstd-safe v7.1.0
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking alloc-stdlib v0.2.2
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]    Compiling zstd-sys v2.0.10+zstd.1.5.6
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling time-core v0.1.2
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]     Checking bitflags v2.5.0
[INFO] [stderr]     Checking equivalent v1.0.1
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking actix-rt v2.9.0
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking actix-service v2.0.2
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling bytestring v1.3.1
[INFO] [stderr]     Checking brotli-decompressor v2.5.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling serde_json v1.0.116
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking zerocopy v0.7.32
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking brotli v3.5.0
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking encoding_rs v0.8.34
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling actix-router v0.5.2
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking actix-server v2.3.0
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling actix-web-codegen v4.2.2
[INFO] [stderr]    Compiling v_htmlescape v0.15.8
[INFO] [stderr]     Checking crossbeam-channel v0.5.12
[INFO] [stderr]    Compiling actix_derive v0.6.1
[INFO] [stderr]    Compiling diesel_table_macro_syntax v0.1.0
[INFO] [stderr]    Compiling diesel_derives v2.1.4
[INFO] [stderr]     Checking actix v0.13.3
[INFO] [stderr]     Checking iana-time-zone v0.1.60
[INFO] [stderr]     Checking http-range v0.1.5
[INFO] [stderr]     Checking uuid v1.8.0
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking zstd v0.13.1
[INFO] [stderr]     Checking actix-http v3.6.0
[INFO] [stderr]     Checking diesel v2.1.6
[INFO] [stderr]     Checking actix-web v4.5.1
[INFO] [stderr]     Checking actix-web-actors v4.3.0
[INFO] [stderr]     Checking actix-files v0.6.5
[INFO] [stderr]     Checking rust-react-chat-project v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0468]: an `extern crate` loading macros must be at the crate root
[INFO] [stdout]   --> src/db.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | extern crate diesel;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `schema` is defined multiple times
[INFO] [stdout]   --> src/main.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | mod schema;
[INFO] [stdout]    | ----------- previous definition of the module `schema` here
[INFO] [stdout] ...
[INFO] [stdout] 19 | mod schema;
[INFO] [stdout]    | ^^^^^^^^^^^ `schema` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `schema` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0468]: an `extern crate` loading macros must be at the crate root
[INFO] [stdout]   --> src/db.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | extern crate diesel;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `schema` is defined multiple times
[INFO] [stdout]   --> src/main.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | mod schema;
[INFO] [stdout]    | ----------- previous definition of the module `schema` here
[INFO] [stdout] ...
[INFO] [stdout] 19 | mod schema;
[INFO] [stdout]    | ^^^^^^^^^^^ `schema` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `schema` must be defined only once in the type namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `main` is defined multiple times
[INFO] [stdout]   --> src/main.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[actix_web::main]
[INFO] [stdout]    | ------------------ previous definition of the value `main` here
[INFO] [stdout] ...
[INFO] [stdout] 57 | fn main() {}
[INFO] [stdout]    | ^^^^^^^^^ `main` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `main` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0428]: the name `main` is defined multiple times
[INFO] [stdout]   --> src/main.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[actix_web::main]
[INFO] [stdout]    | ------------------ previous definition of the value `main` here
[INFO] [stdout] ...
[INFO] [stdout] 57 | fn main() {}
[INFO] [stdout]    | ^^^^^^^^^ `main` redefined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `main` must be defined only once in the value namespace of this module
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/main.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout] 10  |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/routes.rs:8:5
[INFO] [stdout]     |
[INFO] [stdout] 8   |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider importing this unresolved item through its public re-export instead:
[INFO] [stdout]             crate::r2d2
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/session.rs:8:5
[INFO] [stdout]     |
[INFO] [stdout] 8   |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider importing this unresolved item through its public re-export instead:
[INFO] [stdout]             crate::r2d2
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `actix_cors`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use actix_cors::Cors;
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `actix_cors`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `actix_cors`, use `cargo add actix_cors` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl`
[INFO] [stdout]   --> src/db.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     use crate::schema::users::dsl::*;
[INFO] [stdout]    |                               ^^^ could not find `dsl` in `users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl`
[INFO] [stdout]   --> src/db.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::schema::users::dsl::*;
[INFO] [stdout]    |                               ^^^ could not find `dsl` in `users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/session.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:26
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/session.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:13
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/session.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:26
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/session.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:13
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:35:35
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/main.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout] 10  |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/routes.rs:8:5
[INFO] [stdout]     |
[INFO] [stdout] 8   |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider importing this unresolved item through its public re-export instead:
[INFO] [stdout]             crate::r2d2
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `diesel::r2d2`, `diesel::r2d2`
[INFO] [stdout]    --> src/session.rs:8:5
[INFO] [stdout]     |
[INFO] [stdout] 8   |     r2d2::{self, ConnectionManager},
[INFO] [stdout]     |     ^^^^   ^^^^ no `r2d2` in the root
[INFO] [stdout]     |     |
[INFO] [stdout]     |     could not find `r2d2` in `diesel`
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider importing this unresolved item through its public re-export instead:
[INFO] [stdout]             crate::r2d2
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub mod r2d2;
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] note: the item is gated behind the `r2d2` feature
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/diesel-2.1.6/src/lib.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 | #[cfg(feature = "r2d2")]
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `actix_cors`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use actix_cors::Cors;
[INFO] [stdout]   |     ^^^^^^^^^^ use of unresolved module or unlinked crate `actix_cors`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `actix_cors`, use `cargo add actix_cors` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl`
[INFO] [stdout]   --> src/db.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     use crate::schema::users::dsl::*;
[INFO] [stdout]    |                               ^^^ could not find `dsl` in `users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::schema::users::dsl`
[INFO] [stdout]   --> src/db.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::schema::users::dsl::*;
[INFO] [stdout]    |                               ^^^ could not find `dsl` in `users`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/session.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:26
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/session.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:13
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/session.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:26
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/session.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(PartialEq, Serialize, Deserialize)]
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/session.rs:5:13
[INFO] [stdout]    |
[INFO] [stdout] 5  | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:42:35
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:35:35
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:20:24
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:20:24
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:20:35
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]  --> src/models.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> src/models.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]  --> src/models.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]   |                                   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> src/models.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> src/models.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:13
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]   --> src/models.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> src/models.rs:1:24
[INFO] [stdout]    |
[INFO] [stdout] 1  | use serde::{Serialize, Deserialize};
[INFO] [stdout]    |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]  --> src/models.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> src/models.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]  --> src/models.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Serialize, Deserialize, Queryable, Insertable)]
[INFO] [stdout]   |                                   ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: `Deserialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]  --> src/models.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `diesel::prelude::*`
[INFO] [stdout]  --> src/schema.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use diesel::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `diesel::prelude::*`
[INFO] [stdout]  --> src/schema.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use diesel::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AppearsInFromClause<Alias<_>>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2> AppearsInFromClause<T2> for T1
[INFO] [stdout]              where T1: TableNotEqual<T2>, T1: Table, T2: Table;
[INFO] [stdout]    = note: upstream crates may add a new impl of trait `diesel::Table` for type `diesel::query_source::Alias<_>` in future versions
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::conversations::table>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAppearsInFromClause<_, schema::rooms::table>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S> AliasAppearsInFromClause<S, T2> for T1
[INFO] [stdout]              where <S as AliasSource>::Target == T1, T1: TableNotEqual<T2>, T1: Table, T2: Table, S: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `AliasAliasAppearsInFromClause<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<T1, T2, S1, S2> AliasAliasAppearsInFromClause<T1, S2, S1> for T2
[INFO] [stdout]              where <S1 as AliasSource>::Target == T1, <S2 as AliasSource>::Target == T2, T1: TableNotEqual<T2>, T1: Table, T2: Table, S1: AliasSource, S2: AliasSource;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::conversations::table, _, _>` for type `schema::conversations::table`
[INFO] [stdout]   --> src/schema.rs:6:1
[INFO] [stdout]    |
[INFO] [stdout] 6  | / diesel::table! {
[INFO] [stdout] 7  | |     conversations (id) {
[INFO] [stdout] 8  | |         id -> Text,
[INFO] [stdout] 9  | |         room_id -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `FieldAliasMapperAssociatedTypesDisjointnessTrick<schema::rooms::table, _, _>` for type `schema::rooms::table`
[INFO] [stdout]   --> src/schema.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / diesel::table! {
[INFO] [stdout] 17 | |     rooms (id) {
[INFO] [stdout] 18 | |         id -> Text,
[INFO] [stdout] 19 | |         name -> Text,
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `diesel`:
[INFO] [stdout]            - impl<TS, TC, S, C> FieldAliasMapperAssociatedTypesDisjointnessTrick<TC, S, C> for TS
[INFO] [stdout]              where <S as AliasSource>::Target == TS, <C as Column>::Table == TC, S: AliasSource, C: Column, TC: Table, TS: TableNotEqual<TC>;
[INFO] [stdout]    = note: this error originates in the macro `diesel::table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:54:32
[INFO] [stdout]     |
[INFO] [stdout] 54  |     Ok(HttpResponse::Ok().json(user))
[INFO] [stdout]     |                           ---- ^^^^ the trait `serde::Serialize` is not implemented for `User`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:54:32
[INFO] [stdout]     |
[INFO] [stdout] 54  |     Ok(HttpResponse::Ok().json(user))
[INFO] [stdout]     |                           ---- ^^^^ the trait `serde::Serialize` is not implemented for `User`
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout] 119 |         Ok(HttpResponse::Ok().json(user))
[INFO] [stdout]     |                               ---- ^^^^ the trait `serde::Serialize` is not implemented for `User`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `User: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:119:36
[INFO] [stdout]     |
[INFO] [stdout] 119 |         Ok(HttpResponse::Ok().json(user))
[INFO] [stdout]     |                               ---- ^^^^ the trait `serde::Serialize` is not implemented for `User`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `RoomResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:142:36
[INFO] [stdout]     |
[INFO] [stdout] 142 |         Ok(HttpResponse::Ok().json(rooms))
[INFO] [stdout]     |                               ---- ^^^^^ the trait `serde::Serialize` is not implemented for `RoomResponse`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `Vec<RoomResponse>` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `RoomResponse: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/routes.rs:142:36
[INFO] [stdout]     |
[INFO] [stdout] 142 |         Ok(HttpResponse::Ok().json(rooms))
[INFO] [stdout]     |                               ---- ^^^^^ the trait `serde::Serialize` is not implemented for `RoomResponse`
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `Vec<RoomResponse>` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `HttpResponseBuilder::json`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/response/builder.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub fn json(&mut self, value: impl Serialize) -> HttpResponse {
[INFO] [stdout]     |                                        ^^^^^^^^^ required by this bound in `HttpResponseBuilder::json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope
[INFO] [stdout]    --> src/db.rs:37:19
[INFO] [stdout]     |
[INFO] [stdout] 37  |         id: Uuid::new_v4().to_string(),
[INFO] [stdout]     |                   ^^^^^^ function or associated item not found in `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions:
[INFO] [stdout]       uuid::builder::<impl Uuid>::nil
[INFO] [stdout]       uuid::builder::<impl Uuid>::max
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields_le
[INFO] [stdout]       and 10 others
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5
[INFO] [stdout]     |
[INFO] [stdout] 72  |     pub const fn nil() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub const fn max() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope
[INFO] [stdout]    --> src/db.rs:37:19
[INFO] [stdout]     |
[INFO] [stdout] 37  |         id: Uuid::new_v4().to_string(),
[INFO] [stdout]     |                   ^^^^^^ function or associated item not found in `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions:
[INFO] [stdout]       uuid::builder::<impl Uuid>::nil
[INFO] [stdout]       uuid::builder::<impl Uuid>::max
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields_le
[INFO] [stdout]       and 10 others
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5
[INFO] [stdout]     |
[INFO] [stdout] 72  |     pub const fn nil() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub const fn max() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope
[INFO] [stdout]    --> src/db.rs:52:19
[INFO] [stdout]     |
[INFO] [stdout] 52  |         id: Uuid::new_v4().to_string(),
[INFO] [stdout]     |                   ^^^^^^ function or associated item not found in `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions:
[INFO] [stdout]       uuid::builder::<impl Uuid>::nil
[INFO] [stdout]       uuid::builder::<impl Uuid>::max
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields_le
[INFO] [stdout]       and 10 others
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5
[INFO] [stdout]     |
[INFO] [stdout] 72  |     pub const fn nil() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub const fn max() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new_v4` found for struct `Uuid` in the current scope
[INFO] [stdout]    --> src/db.rs:52:19
[INFO] [stdout]     |
[INFO] [stdout] 52  |         id: Uuid::new_v4().to_string(),
[INFO] [stdout]     |                   ^^^^^^ function or associated item not found in `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Uuid` consider using one of the following associated functions:
[INFO] [stdout]       uuid::builder::<impl Uuid>::nil
[INFO] [stdout]       uuid::builder::<impl Uuid>::max
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields
[INFO] [stdout]       uuid::builder::<impl Uuid>::from_fields_le
[INFO] [stdout]       and 10 others
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.8.0/src/builder.rs:72:5
[INFO] [stdout]     |
[INFO] [stdout] 72  |     pub const fn nil() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub const fn max() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub const fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub const fn from_fields_le(d1: u32, d2: u16, d3: u16, d4: &[u8; 8]) -> Uuid {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> NewUser: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:43:1
[INFO] [stdout]     |
[INFO] [stdout] 43  | #[post("/users/create")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `NewUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `NewUser` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Json<NewUser>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Json<NewUser>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `post` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> NewUser: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:43:1
[INFO] [stdout]     |
[INFO] [stdout] 43  | #[post("/users/create")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `NewUser`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `NewUser` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Json<NewUser>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Json<NewUser>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `post` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:56:1
[INFO] [stdout]     |
[INFO] [stdout] 56  | #[get("/users/{user_id}")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `Uuid` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Path<Uuid>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path<Uuid>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:56:1
[INFO] [stdout]     |
[INFO] [stdout] 56  | #[get("/users/{user_id}")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `Uuid` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Path<Uuid>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path<Uuid>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout] 81  | #[get("/conversations/{uid}")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `Uuid` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Path<Uuid>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path<Uuid>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `for<'de> Uuid: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]    --> src/routes.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout] 81  | #[get("/conversations/{uid}")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> serde::Deserialize<'de>` is not implemented for `Uuid`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]               &'a [u8]
[INFO] [stdout]               &'a std::path::Path
[INFO] [stdout]               &'a str
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 143 others
[INFO] [stdout]     = note: required for `Uuid` to implement `DeserializeOwned`
[INFO] [stdout]     = note: required for `actix_web::web::Path<Uuid>` to implement `FromRequest`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(actix_web::web::Data<{type error}>, actix_web::web::Path<Uuid>)` to implement `FromRequest`
[INFO] [stdout] note: required by a bound in `Resource::<T>::to`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-web-4.5.1/src/resource.rs:244:15
[INFO] [stdout]     |
[INFO] [stdout] 241 |     pub fn to<F, Args>(mut self, handler: F) -> Self
[INFO] [stdout]     |            -- required by a bound in this associated function
[INFO] [stdout] ...
[INFO] [stdout] 244 |         Args: FromRequest + 'static,
[INFO] [stdout]     |               ^^^^^^^^^^^ required by this bound in `Resource::<T>::to`
[INFO] [stdout]     = note: this error originates in the attribute macro `get` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:82:36
[INFO] [stdout]     |
[INFO] [stdout] 82  |           self.send_message("main", &json!({
[INFO] [stdout]     |  ____________________________________^
[INFO] [stdout] 83  | |             "value": vec![format!("{}", id)],
[INFO] [stdout] 84  | |             "chat_type": session::ChatType::CONNECT
[INFO] [stdout] 85  | |         }).to_string(), 0);
[INFO] [stdout]     | |          ^
[INFO] [stdout]     | |          |
[INFO] [stdout]     | |__________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |            required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:82:36
[INFO] [stdout]     |
[INFO] [stdout] 82  |           self.send_message("main", &json!({
[INFO] [stdout]     |  ____________________________________^
[INFO] [stdout] 83  | |             "value": vec![format!("{}", id)],
[INFO] [stdout] 84  | |             "chat_type": session::ChatType::CONNECT
[INFO] [stdout] 85  | |         }).to_string(), 0);
[INFO] [stdout]     | |          ^
[INFO] [stdout]     | |          |
[INFO] [stdout]     | |__________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |            required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |               self.send_message("main", &json!({
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 102 | |                 "room": room,
[INFO] [stdout] 103 | |                 "value": vec![format!("Someone disconnect!")],
[INFO] [stdout] 104 | |                 "chat_type": session::ChatType::DISCONNECT
[INFO] [stdout] 105 | |             }).to_string(), 0);
[INFO] [stdout]     | |              ^
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:101:40
[INFO] [stdout]     |
[INFO] [stdout] 101 |               self.send_message("main", &json!({
[INFO] [stdout]     |  ________________________________________^
[INFO] [stdout] 102 | |                 "room": room,
[INFO] [stdout] 103 | |                 "value": vec![format!("Someone disconnect!")],
[INFO] [stdout] 104 | |                 "chat_type": session::ChatType::DISCONNECT
[INFO] [stdout] 105 | |             }).to_string(), 0);
[INFO] [stdout]     | |              ^
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:136:39
[INFO] [stdout]     |
[INFO] [stdout] 136 |               self.send_message(&room, &json!({
[INFO] [stdout]     |  _______________________________________^
[INFO] [stdout] 137 | |                 "room": room,
[INFO] [stdout] 138 | |                 "value": vec![format!("Someone disconnect!")],
[INFO] [stdout] 139 | |                 "chat_type": session::ChatType::DISCONNECT
[INFO] [stdout] 140 | |             }).to_string(), 0);
[INFO] [stdout]     | |              ^
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatType: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/server.rs:136:39
[INFO] [stdout]     |
[INFO] [stdout] 136 |               self.send_message(&room, &json!({
[INFO] [stdout]     |  _______________________________________^
[INFO] [stdout] 137 | |                 "room": room,
[INFO] [stdout] 138 | |                 "value": vec![format!("Someone disconnect!")],
[INFO] [stdout] 139 | |                 "chat_type": session::ChatType::DISCONNECT
[INFO] [stdout] 140 | |             }).to_string(), 0);
[INFO] [stdout]     | |              ^
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________the trait `serde::Serialize` is not implemented for `ChatType`
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]               (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]             and 134 others
[INFO] [stdout]     = note: required for `&ChatType` to implement `serde::Serialize`
[INFO] [stdout] note: required by a bound in `to_value`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/value/mod.rs:964:8
[INFO] [stdout]     |
[INFO] [stdout] 962 | pub fn to_value<T>(value: T) -> Result<Value, Error>
[INFO] [stdout]     |        -------- required by a bound in this function
[INFO] [stdout] 963 | where
[INFO] [stdout] 964 |     T: Serialize,
[INFO] [stdout]     |        ^^^^^^^^^ required by this bound in `to_value`
[INFO] [stdout]     = note: this error originates in the macro `json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/server.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |       fn handle(&mut self, msg: Join, _: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                                                 ------------ expected `()` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 142 | /         self.rooms
[INFO] [stdout] 143 | |             .entry(name.clone())
[INFO] [stdout] 144 | |             .or_insert_with(HashSet::new)
[INFO] [stdout] 145 | |             .insert(id)
[INFO] [stdout]     | |                       ^- help: consider using a semicolon here: `;`
[INFO] [stdout]     | |_______________________|
[INFO] [stdout]     |                         expected `()`, found `bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/server.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |       fn handle(&mut self, msg: Join, _: &mut Self::Context) -> Self::Result {
[INFO] [stdout]     |                                                                 ------------ expected `()` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 142 | /         self.rooms
[INFO] [stdout] 143 | |             .entry(name.clone())
[INFO] [stdout] 144 | |             .or_insert_with(HashSet::new)
[INFO] [stdout] 145 | |             .insert(id)
[INFO] [stdout]     | |                       ^- help: consider using a semicolon here: `;`
[INFO] [stdout]     | |_______________________|
[INFO] [stdout]     |                         expected `()`, found `bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/session.rs:95:56
[INFO] [stdout]      |
[INFO] [stdout] 95   |                 let data_json = serde_json::from_str::<ChatMessage>(&text.to_string());
[INFO] [stdout]      |                                                        ^^^^^^^^^^^ the trait `serde::Deserialize<'_>` is not implemented for `ChatMessage`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a std::path::Path
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 143 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/de.rs:2676:8
[INFO] [stdout]      |
[INFO] [stdout] 2674 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2675 | where
[INFO] [stdout] 2676 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/session.rs:95:56
[INFO] [stdout]      |
[INFO] [stdout] 95   |                 let data_json = serde_json::from_str::<ChatMessage>(&text.to_string());
[INFO] [stdout]      |                                                        ^^^^^^^^^^^ the trait `serde::Deserialize<'_>` is not implemented for `ChatMessage`
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Deserialize<'de>`:
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a std::path::Path
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 143 others
[INFO] [stdout] note: required by a bound in `serde_json::from_str`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/de.rs:2676:8
[INFO] [stdout]      |
[INFO] [stdout] 2674 | pub fn from_str<'a, T>(s: &'a str) -> Result<T>
[INFO] [stdout]      |        -------- required by a bound in this function
[INFO] [stdout] 2675 | where
[INFO] [stdout] 2676 |     T: de::Deserialize<'a>,
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^ required by this bound in `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/session.rs:111:57
[INFO] [stdout]      |
[INFO] [stdout] 111  |                         let msg = serde_json::to_string(&chat_msg).unwrap();
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^ the trait `serde::Serialize` is not implemented for `ChatMessage`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]                (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]              and 134 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/session.rs:111:57
[INFO] [stdout]      |
[INFO] [stdout] 111  |                         let msg = serde_json::to_string(&chat_msg).unwrap();
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^ the trait `serde::Serialize` is not implemented for `ChatMessage`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]                (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]              and 134 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/session.rs:134:57
[INFO] [stdout]      |
[INFO] [stdout] 134  |                         let msg = serde_json::to_string(&chat_msg).unwrap();
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^ the trait `serde::Serialize` is not implemented for `ChatMessage`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]                (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]              and 134 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChatMessage: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/session.rs:134:57
[INFO] [stdout]      |
[INFO] [stdout] 134  |                         let msg = serde_json::to_string(&chat_msg).unwrap();
[INFO] [stdout]      |                                   --------------------- ^^^^^^^^^ the trait `serde::Serialize` is not implemented for `ChatMessage`
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = help: the following other types implement trait `serde::Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]                (T0, T1, T2, T3, T4, T5)
[INFO] [stdout]              and 134 others
[INFO] [stdout] note: required by a bound in `serde_json::to_string`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.116/src/ser.rs:2209:17
[INFO] [stdout]      |
[INFO] [stdout] 2207 | pub fn to_string<T>(value: &T) -> Result<String>
[INFO] [stdout]      |        --------- required by a bound in this function
[INFO] [stdout] 2208 | where
[INFO] [stdout] 2209 |     T: ?Sized + Serialize,
[INFO] [stdout]      |                 ^^^^^^^^^ required by this bound in `to_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0119, E0277, E0308, E0428, E0432, E0468, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0119`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0119, E0277, E0308, E0428, E0432, E0468, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0119`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-react-chat-project` (bin "rust-react-chat-project") due to 60 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rust-react-chat-project` (bin "rust-react-chat-project" test) due to 60 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "4f63a8a4c653538b0722918d7d9c9360eead98e2ad9899f4f73bdb1955daa022", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f63a8a4c653538b0722918d7d9c9360eead98e2ad9899f4f73bdb1955daa022", kill_on_drop: false }`
[INFO] [stdout] 4f63a8a4c653538b0722918d7d9c9360eead98e2ad9899f4f73bdb1955daa022
